Macro Rotate To Point/it

Macro Rotatzione su Punto

Descrizione
Nuva versione GUI modicato per HD dpi (QGridLayout) funziona solo su FC version 0.18 e più alto (PySide2 Qt5)

Questa macro fa ruotare un oggetto su se stesso intorno all'asse scelto.
Si deve salvare in un file tutte le coordinate elaborate come "Coordinate [(0.06,1.30,0.0), (85.0,0.0,0.0)]" o in una macro completa per creare un'animazione

Per la precedente versione vedi Macro_Rotate_To_Point e installa manualmente.

Versione macro: 00.09
Ultima modifica: 2021/02/25
Versione FreeCAD: 0.18 e più
Download: ToolBar Icon
Autore: Mario52
Autore
Mario52
Download
ToolBar Icon
Link
Versione macro
00.09
Data ultima modifica
2021/02/25
Versioni di FreeCAD
0.18 e più
Scorciatoia
Nessuna
Vedere anche
Nessuno

Descrizione

Macro per far ruotare un oggetto su se stesso scegliendo l'asse di rotazione: il centro del bounding box, il centro di massa, la direzione, un percorso lungo una linea o l'ultimo punto cliccato. È necessario salvare in un file tutte le coordinate elaborate come "Coordinate [(0.06,1.30,0.0),(85.0,0.0,0.0)],"
oppure in una macro completa con diverse opzioni (Crea immagine seriale) per creare un'animazione, aumentare/diminuire, mettere in pausa, effetto yo-yo ....


Temporary code for external macro link. Do not use this code. This code is used exclusively by Addon Manager. Link for optional manual installation: Macro


# This code is copied instead of the original macro code
# to guide the user to the online download page.
# Use it if the code of the macro is larger than 64 KB and cannot be included in the wiki
# or if the RAW code URL is somewhere else in the wiki.

from PySide import QtGui, QtCore

diag = QtGui.QMessageBox(QtGui.QMessageBox.Information,
    "Information",
    "This macro must be downloaded from this link\n"
    "\n"
    "https://gist.githubusercontent.com/mario52a/2fc48333deca5a31e6232c29a9db5e4c/raw/d9419d4bb13e36940eb2f56c3c469ea4182827ee/Macro%2520Rotate%2520To%2520Point.FCMacro" + "\n"
    "\n"
    "Quit this window to access the download page")

diag.setWindowFlags(QtCore.Qt.WindowStaysOnTopHint)
diag.setWindowModality(QtCore.Qt.ApplicationModal)
diag.exec_()

import webbrowser 
webbrowser.open("https://gist.githubusercontent.com/mario52a/2fc48333deca5a31e6232c29a9db5e4c/raw/d9419d4bb13e36940eb2f56c3c469ea4182827ee/Macro%2520Rotate%2520To%2520Point.FCMacro")
<class="rawcodeurl"><a href="https://gist.githubusercontent.com/mario52a/2fc48333deca5a31e6232c29a9db5e4c/raw/d9419d4bb13e36940eb2f56c3c469ea4182827ee/Macro%2520Rotate%2520To%2520Point.FCMacro">raw code</a>


Utilizzo

  1. Caricare la macro con l'Addon Manager
  2. Lanciare la macro
  3. Clicccare un oggetto
  4. Selezionare uno dei seguenti orientamenti:

Interface Rotate to point

[1] Position Rotation

Prima operazione

[1] Posizione Rotazione

Lo SpinBox 1.00000 Gradi viene reinizializzato a 0.0 e colorato di rosso

[2] Translation Rotation

Seconda operazione

[2]Traslazione Rotazione

Point Rotation

Axis Rotation

Lo SpinBox 1.00000 Gradi viene reinizializzato a 0.0 e colorato di rosso

Coordinates Point clicked

Rotate To Point Coordinate-On-Point-Clicked

[3] Work (Box : Cube)

Terza operazione

Macro Rotate To Point Work

Dati da salvare

Rotate To Point Data-To-Save

Command

Comando Rotate To Point

Icona barra degli strumenti in formato PNG e icona della barra degli strumenti in formato SVG

Esempio

Link

Sul forum feature req: placement - rotate part around its midpoint

Le mie macro su Gist mario52a

Versione

17/10/2022 Versione=00.11 : nuova organizzazione GUI, Segui il percorso, Visualizza sull'oggetto, Copia pulsante, aggiunta menu Immagine sulla macro salvata, aggiunto "QtWidgets.QScrollArea()"

08/03/2021/03/08 Versione=00.10 : aggiunta dello zoom sull'oggetto cliccato, valore di memoria, valori imposti

2021/02/25 Version=00.09 : corretta la macro: causa possibile multi-oggetto

App.ActiveDocument.getObject(p[0]).Placement

Invece

myObject.Placement

2021/02/22 Version=00.08c : correct the center facePoint (19h26 Paris)

2021/02/22 Version=00.08b : correct the center facePoint (17h23 Paris)

2021/02/22 Version=00.08 : adding save macro with multi objects moved

2021/01/24 Version=00.07 : adding option R: reverse

2021/01/12 ver 00.06 : aggiunta della sezione Dati e altre opzioni

2020/03/07 ver 00.05.2 : corretto il bug translation delete "direction = myObject.Placement.Rotation.multVec(direction)"

2020/03/01 ver 00.05.1 : corretto la posizione del test "FreeCAD version"

2020/02/29 ver 00.05 : conversione per Hdpi (Layout) e aggiunto Direction

06/04/2019 ver 00.04 : Python 3

29/03/2018 ver 00.03 : commento delle linee "FreeCAD.ActiveDocument.recompute()" il cambiamento di posizione e tropo lento con la versione di FreeCAD 0.17.... vedere FC0.17 recompute strange behaviour (regression)

27/03/2017 ver 00.02 : modificazione dello spinbox "Pos" adesso accetta i numeri negativi

05/03/2017 ver 00.01 : agggiunto 3 spinbox per visualizzare le coordinate X Y Z del clic del mouse

04/03/2017 ver 00.00